The commonly assigned U.S. patent application entitled “Vehicle Active Network,” Ser. No. 09/945,581, filed Aug. 31, 2002, the disclosure of which is hereby expressly incorporated herein by reference, introduces the concept of an active network that includes a switch fabric. The switch fabric is a web of interconnected switching devices. Control devices, sensors, actuators and the like are coupled to the switch fabric, and the switch fabric facilitates communication between these coupled devices.
The coupled devices may be indicator lights, vehicle control systems, vehicle safety systems, and comfort and convenience systems. A command to actuate a device or devices may be generated by a control element coupled to the switch fabric and is communicated to the device or devices via the switch fabric. The command may require simultaneous activation of two or more devices. However, the switch fabric may be a packet based communication medium making coordinating simultaneous events difficult.
To illustrate this difficulty take for example the need to illuminate the left, right and center high-mounted brake lights on an automobile. Each of the brake lights should appear to illuminate substantially simultaneously. Each of the lights is coupled to the switch fabric. The command to illuminate the lights may be generated by a braking control module, which is also coupled to the switch fabric. The command is communicated from the braking control module to the three brake lights. However, the command may take different incremental amounts of time based upon the paths the command takes through the network to arrive at each of the three brake lights. If the brake lights act on the command when received, the lights may not appear to come on simultaneously. The command may give a time at which to activate, but if each of the brake lights are not time synchronized, they still will not actuate at the same coordinated time.
Another problem may involve the communication of information from many devices to a single device. For example, it may be necessary to communicate various control parameters from a number of engine sensors to an engine controller so that it may then issue commands for the control of the engine. For example, to detect misfire the engine controller receives data from several oxygen sensors, the crankshaft position sensor and potentially other sensors. To be certain that the misfire is detected for the correct engine cylinder so that control parameters may be varied to correct the misfire, the data must arrive to the engine controller in a coordinated manner or have a reliable time indication. Again, unless each of the sensors are time synchronized, there is no way to accurately time stamp the data packets or to effectively communicate them to the engine controller in a coordinated manner.
Thus, there is a need for a method and apparatus to synchronize elements of an in-vehicle network.